package com.zycfc.zsf.boot.mq.rabbitmq.destinations;

import com.zycfc.zsf.boot.mq.rabbitmq.type.*;
import org.springframework.amqp.core.*;

public interface IDestination
{
    public static final String DEFAULT_EXCHAGE_NAME = "";
    
    AbstractExchange exchange();
    
    default boolean isDefaultExchange() {
        return "".equals(this.exchange().getName());
    }
    
    ExchangeType exchangeType();
    
    Queue queue();
    
    Binding binding();
    
    String getRoutingKey();
    
    void setRoutingKey(final String p0);
    
    void resetName(final String p0, final IDestination p1);
    
    default boolean getSaveErrFlag() {
        return true;
    }
}
